Multi-antenna digital communications systems are commonly referred to as multiple input multiple output
(MIMO) systems and they cover all systems that include a plurality of transmit antennas and generally a plurality of receive antennas. A MIMO system having only a single receive antenna is also referred to as a multiple input single output (MISO) system.
Such systems satisfy the ever-increasing demand for the supply of a variety of telecommunications services at data rates that are always greater than those presently available. It has been proved that the capacity of MIMO channels increases in proportion with the minimum numbers of transmit and receive antennas.
An example of such a system is shown in the diagram of FIG. 1. The system comprises a base station with NT transmit antennas and K mobile stations (referred to simply as “mobiles” below) with NRk, receive antennas for the user k associated with the mobile k. The transmission channel for the user k is modeled by a matrix Hk of size NRk×NT that represents the impact of the transmission channel between the transmit antennas and the receive antennas. Each component of the matrix is a random variable of zero average value and of variance that is considered to be equal to 1.
An embodiment of the invention lies in the context of a channel with slow Rayleigh fading per user and with total independence between the various channels for the various users. This makes it possible to consider that for each data stream associated with a user, the propagation channel of the stream is independent of the propagation channels of the other streams. The context of a channel with slow Rayleigh fading per user and with total independence between the various channels of the various users typically corresponds to propagation in an urban area, i.e. with multiple path propagation.
With a multi-user MIMO system, the streams for the various users are transmitted simultaneously from the base station to the receivers of the users.
An embodiment of the invention lies in a context of broadcasting in the information theory meaning, i.e. in a context of different streams for different users being transmitted from a single transmitter. Furthermore, the transmitter has perfect knowledge of the transmission channel. This implies a perfect estimate of all of the components of the matrices Hk of all of the users, since the channel is a broadcast channel, and also the transmission channel does not vary between the moment when an estimate of the channel is made on reception and the moment when said estimate is used on transmission.
At the transmission end, pre-coders serve to separate the streams of the various users so as to minimize inter-user interference on reception and consequently improve the data rate conveyed. A data stream is associated with a user. The streams of the various users may relate to telecommunications services that are the same and/or different (e.g. voice, data, video).
Although the maximum number of streams per user is Qk=min(NRk,Tk), the present description is limited to one stream per user for simplification purposes.
The total maximum data rate that can be conveyed by a MIMO system to all of the users is a very important quantity that serves for dimensioning the system. This quantity is defined by information theory as the ergodic capacity of the system.
Optimization of the total data rate is based on simultaneously optimizing the transmitter and the receiver in order to find the combination that minimizes mean square error (MSE).
Known techniques for multi-user MIMO systems are based on criteria such as minimum mean square error (MMSE) and signal to jamming and noise ratio (SJNR) that enable the system to be optimized.
Certain theoretical analyses have shown that the capacity of the multi-user MIMO (MU-MIMO) broadcast channel can be reached using the dirty paper coding (DPC) algorithm [3,4]. Nevertheless, in spite of great advances in computers, DPC pre-coding remains an algorithm that is very difficult to put into place because of the computation power required.
Thus, sub-optimal solutions of linear pre-coders with low complexity have appeared.
One category of linear pre-coders makes use of so-called linear non-iterative algorithms also referred to as “direct” or “closed form” (CF) algorithms. For each stream, these algorithms determine a send and receive vector pair. The pairs of vectors relating to all of the users are calculated by the base station. The base station informs the users of their receive vectors, typically by using a signaling channel. The base station transmits the information of each stream while using the corresponding transmit vector. All of the streams are transmitted simultaneously. On reception, each receiver associated with a user makes use of the receive vector communicated by the base station to combine the signals received on the various antennas and extract the samples that correspond to the stream of the user.
Among such pre-coders, an SJNR pre-coder is a pre-coder that is based on maximizing the signal to jamming and noise ratio, which ratio is given by the following expression:
                              SJNR          k                =                                            T              k              H                        ⁢                          H              k              H                        ⁢                          H              k                        ⁢                          T              k                                                                          T                k                H                            ⁢                                                ∑                                                            h                      =                      1                                        ,                                          j                      ≠                      k                                                        K                                ⁢                                                      H                    j                    H                                    ⁢                                      H                    j                                    ⁢                                      T                    k                                                                        +                                          N                0                            ⁢                                                          ⁢              I                                                          (        1.1        )            
By way of example, article [1] discloses a method based on a pre-coder defined as the generalized eigen value of the expression for SJNR.
According to that article, the SJNR pre-coder for user k is determined by the following equation:
                                          T            k                    =                                                    P                k                                      ⁢                                          ζ                m                            ⁡                              (                                                                            (                                                                                                    ∑                                                                                          j                                =                                1                                                            ,                                                              j                                ≠                                k                                                                                      K                                                    ⁢                                                                                    H                              j                              H                                                        ⁢                                                          H                              j                                                                                                      +                                                                                                            N                              0                                                                                      P                              k                                                                                ⁢                          I                                                                    )                                                              -                      1                                                        ⁢                                      H                    k                    H                                    ⁢                                      H                    k                                                  )                                                    ⁢                                  ⁢        with        ⁢                                  ⁢                                            ∑                              k                =                1                            K                        ⁢                          P              k                                =                      P            T                                              (        1.2        )            where Pk is the power transmitted to the user k and ζm[x] is the function that returns the greatest eigen value of x, i.e. ζm[x] is the eigen vector corresponding to the greatest eigen value of x. For the receiver, the authors of [1] propose a simple matched filter (MF) receiver having the following expression:
                              D                      MF            ,            k                          =                                            (                                                H                  k                                ⁢                                  T                  k                                            )                        H                                                          (                                                H                  k                                ⁢                                  T                  k                                            )                                                                      (        1.7        )            
An iterative version of that pre-coder is described in [6] and the corresponding expression for the pre-coder is expressed in the form:
                              T          k          iter                =                                            P              k                                ⁢                                    ζ              m                        ⁡                          (                                                                    (                                                                                            ∑                                                                                    j                              =                              1                                                        ,                                                          j                              ≠                              k                                                                                K                                                ⁢                                                                                                            (                                                              H                                j                                iter                                                            )                                                        H                                                    ⁢                                                      (                                                          H                              j                              iter                                                        )                                                                                              +                                                                                                    N                            0                            iter                                                                                P                            k                                                                          ⁢                        I                                                              )                                                        -                    1                                                  ⁢                                                      (                                          H                      k                      iter                                        )                                    H                                ⁢                                  H                  k                  iter                                            )                                                          (        1.3        )            
In this expression (1.3), N0iter represents the noise level perceived on reception by user k at iteration iter. N0iter is given by the expression:N0iter=N0Dkiter(Dkiter)H with Dkiter being the receiver under consideration of the user k. In [6] the proposed receiver is an MSR receiver having the following expression:
                              D                      MSR            ,            k                          -                              (                                          ζ                m                            ⁡                              (                                                                            (                                                                                                    ∑                                                                                          j                                =                                1                                                            ,                                                              j                                ≠                                k                                                                                      K                                                    ⁢                                                                                    H                              k                                                        ⁢                                                          T                              j                                                        ⁢                                                          R                                                              s                                j                                                                                      ⁢                                                          T                              j                              H                                                        ⁢                                                          H                              k                              H                                                                                                      +                                                                              N                            0                                                    ⁢                          I                                                                    )                                                              -                      1                                                        ⁢                                      H                    k                                    ⁢                                      T                    k                                    ⁢                                      R                                          s                      k                                                        ⁢                                      T                    k                    H                                    ⁢                                      H                    k                    H                                                  )                                      )                    H                                    (        1.8        )            
Analyzing the performance of the system comprising the transmitter and the receiver is based on the value for the total data rate of the system. The expression for the total data rate or “sum-rate” (SR) is given by information theory as the sum of the data rates offered to the various users:
                    SR        =                              ∑                          k              =              1                        K                    ⁢                                    log              2                        ⁡                          (                              1                +                                                                            D                      k                                        ⁢                                          H                      k                                        ⁢                                          T                      k                                        ⁢                                          R                                              s                        k                                                              ⁢                                          T                      k                      H                                        ⁢                                          H                      k                      H                                        ⁢                                          D                      k                      H                                                                                                                          D                        k                                            ⁡                                              (                                                                              γ                            k                                                    +                                                                                    N                              0                                                        ⁢                            I                                                                          )                                                              ⁢                                          D                      k                      H                                                                                  )                                                          (        1.10        )            where the term
      γ    k    =            H      k        ⁢                  ∑                              j            =            1                    ,                      j            ≠            k                          K            ⁢                        T          j                ⁢                  R                      s            j                          ⁢                  T          j          H                ⁢                  H          k          H                    represents the interference generated by the other users and picked up by the user k.
The system described in [6] does indeed enable data rates to be maximized, but the algorithm converges towards a local maximum that depends on how the algorithm is initialized. Consequently, system optimization is not optimum when the local maximum is not a greatest maximorum.